package com.yqg.protection.entity;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yqg.protection.cover.LocalDateTimeConverter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * fire_laws 实体类
 *
 * @author zxf
 * @since 2024-09-11
 */
@Getter
@Setter
@TableName("fire_laws")
@ApiModel(value = "FireLaws对象", description = "")
public class FireLaws implements Serializable {

    private static final long serialVersionUID = 1L;

    @ExcelProperty(value = "ID", index = 0)
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ExcelProperty(value = "法规名称", index = 1)
    @ApiModelProperty("法规名称")
    private String lawsName;

    @ExcelProperty(value = "法规类别", index = 2)
    @ApiModelProperty("法规类别")
    private String lawsType;

    @ExcelProperty(value = "颁布机关", index = 3)
    @ApiModelProperty("颁布机关")
    private String promulgatAuthor;

    @ExcelProperty(value = "批准机关", index = 4)
    @ApiModelProperty("批准机关")
    private String approvalAuthor;

    @ExcelProperty(value = "颁布文号", index = 5)
    @ApiModelProperty("颁布文号")
    private String promulgatNumber;

    @ExcelProperty(value = "颁布日期", index = 6, converter = LocalDateTimeConverter.class)
    @ApiModelProperty("颁布日期")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime enactmentDate;

    @ExcelProperty(value = "实施日期", index = 7, converter = LocalDateTimeConverter.class)
    @ApiModelProperty("实施日期")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime materialDate;

    @ExcelProperty(value = "输入人姓名", index = 8)
    @ApiModelProperty("输入人姓名")
    private String enterName;

    @ExcelProperty(value = "法规文件", index = 9)
    @ApiModelProperty("法规文件")
    private String fileUrl;

    @ExcelIgnore
    private Integer isDelete;


}
